/*
 *  MailHeaders.h
 *  MailWarnMe
 *
 *  Created by Chaim Peck on 3/6/11.
 *  Copyright 2011 __MyCompanyName__. All rights reserved.
 *
 */

@interface MailAccount : NSObject {
	
}

@end

@interface ComposeBackEnd : NSObject
{
    id _delegate;
    NSPort *_initializationPort;
    NSArray *_originalMessages;
    NSArray *generatedParsedMessages;
    long long backgroundResourcesLeft;
    NSMutableDictionary *_originalMessageHeaders;
    NSMutableDictionary *_originalMessageBodies;
    NSURL *_originalMessageBaseURL;
    NSMutableDictionary *_cleanHeaders;
    NSMutableDictionary *_extraRecipients;
    NSMutableDictionary *_directoriesByAttachment;
    NSUndoManager *_undoManager;
    NSMutableSet *_knownMessageIds;
    BOOL _saveThreadCancelFlag;
    NSString *_saveThreadMessageId;
    struct {
        unsigned int type:4;
        unsigned int sendFormat:2;
        unsigned int contentIsLink:1;
        unsigned int hadChangesBeforeSave:1;
        unsigned int hasChanges:1;
        unsigned int showAllHeaders:1;
        unsigned int includeHeaders:1;
        unsigned int isUndeliverable:1;
        unsigned int isDeliveringMessage:1;
        unsigned int sendWindowsFriendlyAttachments:2;
        unsigned int contentsWasEditedByUser:1;
        unsigned int delegateRespondsToDidChange:1;
        unsigned int delegateRespondsToSenderDidChange:1;
        unsigned int delegateRespondsToDidAppendMessage:1;
        unsigned int delegateRespondsToDidSaveMessage:1;
        unsigned int delegateRespondsToDidBeginLoad:1;
        unsigned int delegateRespondsToDidEndLoad:1;
        unsigned int delegateRespondsToWillCreateMessageWithHeaders:1;
        unsigned int delegateRespondsToShouldSaveMessage:1;
        unsigned int delegateRespondsToShouldDeliverMessage:1;
        unsigned int delegateRespondsToDidCancelMessageDeliveryForMissingCertificatesForRecipients:1;
        unsigned int delegateRespondsToDidCancelMessageDeliveryForEncryptionError:1;
        unsigned int delegateRespondsToDidCancelMessageDeliveryForError:1;
        unsigned int delegateRespondsToDidCancelMessageDeliveryForAttachmentError:1;
        unsigned int signIfPossible:1;
        unsigned int encryptIfPossible:1;
        unsigned int knowsCanSign:1;
        unsigned int canSign:1;
        unsigned int shouldDownloadRemoteAttachments:1;
        unsigned int overrideRemoteAttachmentsPreference:1;
        unsigned int editorHasInitialized:1;
        unsigned int isEditing:1;
        unsigned int isSendFormatInitialized:1;
        unsigned int isAppleScriptMessage:1;
        unsigned int preferredEncoding;
        unsigned int encodingHint;
    } _flags;
    NSString *_contentForAddressBookUpdate;
    NSString *_vcardPathForAddressBookUpdate;
    BOOL _willCloseEditor;
    BOOL _isSettingSenderFromGetter;
    NSMutableDictionary *_contentsByMessage;
    NSMutableDictionary *_attachmentMimeBodiesByURL;
    NSNumber *_uniqueID;
}

+ (void)initialize;
+ (id)supportedMailboxUidTypes;
+ (id)keyPathsForValuesAffectingAccount;
- (void)dealloc;
- (id)initCreatingDocumentEditor:(BOOL)arg1;
- (id)init;
- (void)setStateFromBackEnd:(id)arg1;
- (void)setGeneratedParsedMessages:(id)arg1;
- (void)editorHasInitialized:(id)arg1;
- (void)setWillCloseEditor:(BOOL)arg1;
- (id)description;
- (id)delegate;
- (void)setDelegate:(id)arg1;
- (BOOL)hasStationery;
- (id)stationeryController;
- (BOOL)hasChanges;
- (void)setHasChanges:(BOOL)arg1;
- (id)undoManager;
- (void)setUndoManager:(id)arg1;
- (void)setType:(int)arg1;
- (int)type;
- (BOOL)isRedirecting;
- (void)setShouldDownloadRemoteAttachments:(BOOL)arg1;
- (void)setIsUndeliverable:(BOOL)arg1;
- (BOOL)isUndeliverable;
- (BOOL)sendWindowsFriendlyAttachments;
- (void)setSendWindowsFriendlyAttachments:(BOOL)arg1;
- (id)originalMessage;
- (id)originalMessageHeaders;
- (id)originalMessageBody;
- (id)_knownMessageIds;
- (void)setOriginalMessage:(id)arg1;
- (void)setOriginalMessages:(id)arg1;
- (id)attachments;
- (id)directoryForAttachment:(id)arg1;
- (BOOL)preserveAddedArchiveBody;
- (id)restoredParsedMessage;
- (void)setRestoredParsedMessage:(id)arg1;
- (void)generateParsedMessageFromOriginalMessages;
- (void)configureLoadingOfRemoteAttachments;
- (void)setTypeAndConfigureLoadingOfRemoteAttachments:(int)arg1;
- (void)setupContentsForView:(id)arg1;
@property(readonly) BOOL defaultFormatIsRich;
- (void)_continueToSetupContentsForView:(id)arg1 withParsedMessages:(id)arg2;
- (BOOL)restoredMessageIsRich;
- (id)_parsedMessageForMessage:(id)arg1;
- (id)mimeBodyForAttachmentWithURL:(id)arg1;
- (unsigned int)_encodingHint;
- (id)_makeMessageWithContents:(id)arg1 isDraft:(BOOL)arg2 shouldSign:(BOOL)arg3 shouldEncrypt:(BOOL)arg4 shouldSkipSignature:(BOOL)arg5 shouldBePlainText:(BOOL)arg6;
- (id)draftMessage;
- (id)plainTextMessage;
- (id)message;
@property(retain) MailAccount *account;
- (void)setDeliveryAccount:(id)arg1;
- (id)deliveryAccount;
@property(retain) NSString *sender;
- (id)cleanHeaders;
- (void)setCleanHeaders:(id)arg1;
@property(retain) NSString *subject;
- (id)messageID;
- (void)setShowAllHeaders:(BOOL)arg1;
@property BOOL includeHeaders;
@property int sendFormat;
@property BOOL contentIsLink;
- (BOOL)okToAddSignatureAutomatically;
- (BOOL)okToLetUserAddSignature;
- (id)signatureId;
- (id)signature;
- (void)setSignature:(id)arg1;
- (void)setStationerySignatureNode:(id)arg1;
- (void)getSignatureElement:(id *)arg1 parent:(id *)arg2 nextSibling:(id *)arg3;
- (id)htmlStringForSignature:(id)arg1;
- (void)setMessagePriority:(long long)arg1;
- (long long)displayableMessagePriority;
- (void)addHeaders:(id)arg1;
- (id)addressListForHeader:(id)arg1;
- (void)setAddressList:(id)arg1 forHeader:(id)arg2;
- (void)insertAddress:(id)arg1 forHeader:(id)arg2 atIndex:(unsigned long long)arg3;
- (void)removeAddressForHeader:(id)arg1 atIndex:(unsigned long long)arg2;
- (BOOL)isAddressHeaderKey:(id)arg1;
- (BOOL)deliverMessage;
- (BOOL)isDeliveringMessage;
- (void)_synchronouslyAppendMessageToOutboxWithContents:(id)arg1;
- (void)_backgroundAppendEnded:(id)arg1;
- (void)_backgroundSaveEnded:(id)arg1;
- (void)_backgroundSaveDidChangeMessageId:(id)arg1;
- (id)saveTaskName;
- (BOOL)saveMessage;
- (id)defaultMessageStore;
- (void)removeLastDraft;
- (BOOL)isEditingMessage:(id)arg1;
- (void)setSignIfPossible:(BOOL)arg1;
- (void)setEncryptIfPossible:(BOOL)arg1;
- (id)allRecipients;
- (id)recipientsThatHaveNoKeyForEncryption;
- (unsigned int)preferredEncoding;
- (void)setPreferredEncoding:(unsigned int)arg1;
- (BOOL)canSign;
- (BOOL)canEncryptForAllRecipients;
- (BOOL)isValidSaveDestination:(id)arg1;
- (void)_configureLastDraftInformationFromHeaders:(id)arg1 overwrite:(BOOL)arg2;
- (void)_configureLastDraftInformationFromHeaders:(id)arg1;
- (void)updateDocumentReference:(id)arg1;
- (void)updateSaveDestinationAccount:(id)arg1 mailbox:(id)arg2;
- (void)finishPreparingContentWithEditorSettings:(id)arg1;
- (void)notifyDelegateMonitor:(id)arg1 alreadyDone:(char *)arg2;
- (void)fetchAndCacheMessages;
- (void)generateMessageParsedMessages;
- (BOOL)hasContents;
- (BOOL)containsRichText;
- (id)outgoingMessageUsingWriter:(id)arg1 contents:(id)arg2 headers:(id)arg3 isDraft:(BOOL)arg4 shouldBePlainText:(BOOL)arg5;
- (id)htmlStringFromRange:(id)arg1 htmlDocument:(id)arg2 removeCustomAttributes:(BOOL)arg3 convertObjectsToImages:(BOOL)arg4 convertEditableElements:(BOOL)arg5;
- (id)_createPlainTextRepresentationIncludeAttachments:(BOOL)arg1;
- (void)addBaseURLTagToNode:(id)arg1;
- (void)recursivelyURLifyNode:(id)arg1;
- (void)getContentsForMessage:(id)arg1 body:(id)arg2;
- (id)originalMessageParsedMessage;
- (void)setOriginalMessageParsedMessage:(id)arg1;
- (id)htmlDocumentForSave;
- (id)makeCopyOfContentsForDraft:(BOOL)arg1 shouldBePlainText:(BOOL)arg2;
- (BOOL)attachmentCanBeSentInline:(id)arg1;
- (BOOL)containsAttachments;
- (BOOL)containsAttachmentsThatCouldConfuseWindowsClients;
- (void)_ccOrBccMyselfGivenOriginalMessage:(id)arg1 uniquedRecipientsTable:(id)arg2;
- (void)_setupDefaultRecipientsFirstTime:(BOOL)arg1;
- (id)_allRecipients;
- (void)saveRecipients;
- (id)_fallbackReplyAddress;
- (id)replyAddressForMessage:(id)arg1;
- (id)mailboxUidCreateIfNeeded:(BOOL)arg1;
- (int)convertSaveOrSendResultFromResultCodeT:(int)arg1;
@property(readonly) BOOL isSavingMessage;
- (BOOL)isContentSignificant;
@property BOOL saveThreadCancelFlag; // @synthesize saveThreadCancelFlag=_saveThreadCancelFlag;
- (BOOL)_saveThreadShouldCancel;
- (void)_saveThreadUpdateAccount:(id)arg1 mailbox:(id)arg2;
- (void)_saveThreadSetMessageId:(id)arg1 mailboxUid:(id)arg2 overwrite:(id)arg3;
- (void)_saveThreadRemoveLastSave;
- (void)_saveThreadSaveContents:(id)arg1;
- (void)_markForOverwrite:(id)arg1;
- (BOOL)isExchangeNote;
@property(copy) NSString *saveThreadMessageId; // @synthesize saveThreadMessageId=_saveThreadMessageId;
@property(retain) NSURL *originalMessageBaseURL; // @synthesize originalMessageBaseURL=_originalMessageBaseURL;

@end